package org.darcy.service.business;

import java.util.List;

import org.darcy.entity.business.BusinessContract;
import org.darcy.framework.generic.GenericService;
import org.darcy.framework.model.PageData;
import org.darcy.framework.model.PageParam;
import org.darcy.vo.project.ProjectList;

/**
 * BusinessContract服务接口
 */
public interface BusinessContractService extends GenericService<BusinessContract> {
	
	/**
	 * 获取项目详情，包括合同、派工单、审批信息等
	 * 
	 * @param id 合同id
	 * 
	 */
	BusinessContract getProjectData(Integer id);

	/**
	 * 获取BusinessContract详情
	 * 
	 * @param id    对象id
	 */
	BusinessContract getDetail(Integer id);

	/**
	 * 更新合同工作流
	 * 
	 * @param record 合同信息
	 * 
	 */
	BusinessContract updateFlow(BusinessContract record);
	
	/**
	 * 更新合同确认
	 * 
	 * @param record 合同信息
	 * 
	 */
	BusinessContract updateConfirm(BusinessContract record);

	/**
	 * BusinessContract列表(分页)
	 * 
	 * @param param 分页参数
	 */
	PageData<BusinessContract> page(PageParam<ProjectList> param);

	/**
	 * BusinessContract下拉搜索
	 * 
	 * @param keyword 搜索关键字
	 */
	List<BusinessContract> getAll(String keyword);

}
